package com.scau.meetingbook.service;

import com.alipay.api.AlipayApiException;
import com.scau.meetingbook.dto.EnableCancellReservationDTO;
import com.scau.meetingbook.dto.ReservationDTO;
import com.scau.meetingbook.pojo.RoomReservations;
import com.baomidou.mybatisplus.extension.service.IService;
import com.scau.meetingbook.vo.ResultVO;
import java.util.List;

public interface RoomReservationsService extends IService<RoomReservations> {
    ResultVO insertRoomReservations(RoomReservations roomReservations) throws Exception;
    ResultVO<RoomReservations> getRoomReservationsById(Integer id) throws Exception;
    ResultVO updateRoomReservationsById(RoomReservations roomReservations) throws Exception;
    ResultVO deleteRoomReservationsById(Integer id) throws Exception;

    ResultVO createReservation(ReservationDTO reservationDTO);

    String payReservation(String reservationId) throws AlipayApiException;

    ResultVO<List<EnableCancellReservationDTO>> getEnableCancellReservations(Integer userId);

    ResultVO<List<RoomReservations>> getHistoryReservationsByID(Integer id);

    ResultVO getTotalPrice(String reservationId);

}